import Vue from 'vue'
import axios from 'axios'
import router from '../../router'
import store from '../../store1';
import { Message } from 'iview';
Vue.prototype.$Message = Message
// import store from '@/store'
//axios的一些配置，比如发送请求显示loading，请求回来loading消失之类的
//
axios.interceptors.request.use(function(config) { //配置发送请求的信息
    // config.data = encryption(JSON.stringify(config.data));
    if (typeof config.data == 'object') {
        var data = new Array();
        for (var key in config.data) {
            data.push(key + '=' + config.data[key]);
        }
        config.data = data.join("&");
    }
    return config;
}, function(error) {
    return Promise.reject(error);
});

axios.interceptors.response.use(function(response) { //配置请求回来的信息
    // response.data.data =JSON.parse(decrypt(response.data.data))
    // if(response.data.data.code == 0){
    //   Vue.$router.push({path: '/login'});
    //   return;
    // }
    if (response.data.status == 1001) {
        Vue.prototype.$Message.warning(response.data.ret_msg);
    }
    if (response.data.status === 1202) {
        //token失效
        // localStorage.setItem('token','');
        localStorage.removeItem('token')
        var Obj = {}
        store.dispatch('SET_USER_INFO_DATA', Obj)
        router.push({
            name:"Home",
            path:'/home',
            params: {timeOut: true}
        });
        return false;
    }
    return response;
}, function(error) {

    return Promise.reject(error);
});
// axios.defaults.baseURL = 'http://59.148.200.202/';
let hostname = window.location.hostname
if(hostname.indexOf('localhost')!=-1||hostname.indexOf('192')!=-1){
    // Vue.prototype.urlRequest = '/index.php'
    Vue.prototype.urlRequest = 'http://www.dtcf666.com/'
    
}else{
    Vue.prototype.urlRequest = 'http://www.dtcf666.com/'    
}
axios.defaults.baseURL = Vue.prototype.urlRequest;

// axios.CancelToken()

/*axios.defaults.baseURL = (process.env.NODE_ENV !=='production' ? config.dev.httpUrl:config.build.httpUrl);
 axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';*/
// axios.defaults.baseURL='http://tcy28.net/api/';
// Vue.prototype.$http = axios  //其他页面在使用axios的时候直接  this.$http就可以了


// function decrypt(str){
//   ////解密
//   var base64_decode =function(input) {
//     var rv;
//     rv = window.atob(input);
//     rv = escape(rv);
//     rv = decodeURIComponent(rv);
//     return rv;
//   }
//   // var token = 'hcht_2016_kylin';
//   // var token = hex_md5(token);
//   var token="0774ba3f43ad1740c35b54b6c0af4cac";
//
//   var str = JSON.parse(base64_decode(str));
//
//   var str2 = new Array();
//   var index = '';
//   for (var i = 0; i < str.length; i++) {
//     if (i > token.length - 1) {
//       index = token.length - 1;
//     } else {
//       index = i;
//     }
//     str2[i] = String.fromCharCode(str[i] - token[index].charCodeAt());
//   }
//   return base64_decode(str2.join(""));
// };
//
// function encryption(str){
//   ////加密
//   var base64_encode =function(input) {
//     var rv;
//     rv = encodeURIComponent(input);
//     rv = unescape(rv);
//     rv = window.btoa(rv);
//     return rv;
//   }
//   // var token = hex_md5('hcht_2016_kylin');
//   var token ="0774ba3f43ad1740c35b54b6c0af4cac";
//   var str = base64_encode(str);
//
//   var len = str.length;
//
//   var data = new Array();
//   var index = 0;
//   for (var i = 0; i < len; i++) {
//     if (i > token.length - 1) {
//       index = token.length - 1;
//     } else {
//       index = i;
//     }
//     data[i] = str[i].charCodeAt() + token[index].charCodeAt();
//   }
//   data = base64_encode('['+data.join(",")+']');
//
//   var str2 = '{"data":"' + data + '"}';
//   return str2;
// }




export default axios


// WEBPACK FOOTER //
// ./src/common/js/http.js